package cn.dai.service;

import cn.dai.dao.JojoDao;
import cn.dai.dao.JojoDaoImpl;
import cn.dai.pojo.Jojo;
import cn.dai.service.model.Page;

import java.util.List;

/**
 * @author ArkD42
 * @file Paging
 * @create 2020 - 06 - 04 - 8:05
 */
public class JojoServiceImpl implements JojoService {

    JojoDao jojoDao = new JojoDaoImpl();

    @Override
    public int addJojo(Jojo jojo) {
        return jojoDao.addJojo(jojo);
    }

    @Override
    public int delJojoById(Integer id) {
        return jojoDao.deleteJojoById(id);
    }

    @Override
    public int changeJojoById(Jojo jojo) {
        return jojoDao.updateJojoById(jojo);
    }

    @Override
    public List<Jojo> getAllJojoList() {
        return jojoDao.getAllJojo();
    }

    @Override
    public Jojo getJojoById(Integer id) {
        return jojoDao.getJojoById(id);
    }

    @Override
    public Page<Jojo> getLimitJojoList(Integer pageIndex) {

        Page<Jojo> jojoPage = new Page<Jojo>();

        // 获取到总记录数
        jojoPage.setTotals(jojoDao.getTotalCounts());

        // 设置每页的显示数
        jojoPage.setPageSize(5);

        // 通过参数得到当前页
        jojoPage.setPageIndex(pageIndex);

        // 设置总页数
        jojoPage.setTotalPages(jojoPage.getPageSize());

        // 得到分页的结果
        jojoPage.setCurrentList(
                jojoDao.getJojoByLimit(
                (jojoPage.getPageIndex() - 1) * jojoPage.getPageSize(),
                jojoPage.getPageSize()
        ));

        return jojoPage;
    }
}
